package com.guigu.xm.wp.controller;

import com.github.pagehelper.PageInfo;
import com.guigu.xm.pojo.*;
import com.guigu.xm.wp.service.impl.AddScellServlet;
import com.guigu.xm.wp.service.impl.HTServlet;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.*;

import javax.xml.crypto.Data;
import java.util.Date;
import java.util.List;

@Controller
@RequestMapping("ck")
public class WorkCkController {
    @Autowired(required = false)
    HTServlet htServlet;
    @Autowired(required = false)
    AddScellServlet addScellServlet;
    @GetMapping("select")
    @ResponseBody
    public PageVo<DFile> selectAll(String page, String pageNum){
        DFile dFile = new DFile();
        dFile.setDesignCellTag("K001-0");
        PageVo<DFile> dFilePageVo = htServlet.selRk(Integer.parseInt(page), Integer.parseInt(pageNum), dFile);
        System.out.println(dFilePageVo);
        return dFilePageVo;
    }
    @GetMapping("add")
    @ResponseBody
    public int addCell(SCell sCell){
        sCell.setStoreId(sCell.getProductId());
        return addScellServlet.add(sCell);
    }

    @GetMapping("/dfileUp")
    @ResponseBody
    public PageVo<DFile> selUp(String page, String pageNum,DFile dFile){
        PageVo<DFile> dFilePageVo = htServlet.selUp(Integer.parseInt(page), Integer.parseInt(pageNum),dFile);
        System.out.println(dFilePageVo);
        return dFilePageVo;
    }

    @GetMapping("/selectPid")
    @ResponseBody
    public SCell selectPid(SCell name){
        return addScellServlet.selectPid(name);
    }

    @GetMapping("/update")
    @ResponseBody
    public int update(DFile dFile){
        return htServlet.update(dFile);
    }

    @GetMapping("/queryCell")
    @ResponseBody
    public PageVo<DFile> query(String page, String pageNum){
        DFile dFile=new DFile();
        dFile.setDesignCellTag("k001-1");
        PageVo<DFile> dFilePageVo = htServlet.query(Integer.parseInt(page), Integer.parseInt(pageNum), dFile);
        return dFilePageVo;
    }

    @GetMapping("/updateTwo")
    @ResponseBody
    public int updatetoo(SCell sCell){
        System.out.println(1);
        int i = addScellServlet.updateCell(sCell);
        if(i>0){
            System.out.println(1);
            DFile dFile=new DFile();
            String productId = sCell.getProductId();
            dFile.setProductId(productId);
            dFile.setDesignCellTag("K001-0");
            return htServlet.update(dFile);
        }else {
            return 0;
        }

    }

    @GetMapping("/del")
    @ResponseBody
    public int del(String name){
        return addScellServlet.del(name);
    }



    @GetMapping("/addRkk")
    @ResponseBody
    public int adddd(SGather sGather){
        Date d=new Date();
        String id=d.getDate()+""+d.getHours()+""+d.getMinutes()+""+d.getSeconds();
        sGather.setGatherId(id);
        int i1 = addScellServlet.addRk(sGather);
        return 1;
    }
    @GetMapping("/addRk")
    @ResponseBody
    public int addRk(SGatherDetails sGatherDetails){
        Date d=new Date();
        String id=d.getDate()+""+d.getHours()+""+d.getMinutes()+""+d.getSeconds();
        sGatherDetails.setParentId(Integer.parseInt(id));
        sGatherDetails.setGatherTag("K002-1");
        int i2 = htServlet.addSGatherDetails(sGatherDetails);
        return i2;
    }
    @GetMapping("/querySG")
    @ResponseBody
    public PageVo<SGather> querySg(String page, String pageNum,SGather sGather){
        PageVo<SGather> dFilePageVo = addScellServlet.query(Integer.parseInt(page), Integer.parseInt(pageNum),sGather);
        return dFilePageVo;
    }

    @GetMapping("/querySGD")
    @ResponseBody
    public PageVo<SGatherDetails> queryId(String page, String pageNum,SGatherDetails sGatherDetails){
        PageVo<SGatherDetails> dFilePageVo = htServlet.queryID(Integer.parseInt(page), Integer.parseInt(pageNum),sGatherDetails);
        return dFilePageVo;
    }

    @GetMapping("/rksh")
    @ResponseBody
    public int updateId(SGather sGather){
        return addScellServlet.update(sGather);
    }

    @GetMapping("/updaterks")
    @ResponseBody
    public int updates(SGatherDetails sGatherDetails){
        sGatherDetails.getGatherTag();
        return htServlet.updateId(sGatherDetails);
    }

    @GetMapping("/selectPdid")
    @ResponseBody
    public int selectpdid(SGatherDetails sGatherDetails){
        Integer parentId = sGatherDetails.getParentId();
        SGather sGather=new SGather();
        sGather.setGatherId(parentId.toString());
        sGather.setStoreTag("K002-2");
        int i = htServlet.selectPid(sGatherDetails);
        if(i==0){
            return addScellServlet.updatePid(sGather);
        }
        return 0;
    }
    @GetMapping("/ckgl")
    @ResponseBody
    public PageVo<SGatherDetails> queryId(String page, String pageNum){
        PageVo<SGatherDetails> dFilePageVo = htServlet.queryAll(Integer.parseInt(page), Integer.parseInt(pageNum));
        return dFilePageVo;
    }
    @GetMapping("/addCkk")
    @ResponseBody
    public int ad(SPay sGather){
        Date d=new Date();
        String id=d.getDate()+""+d.getHours()+""+d.getMinutes()+""+d.getSeconds();
        sGather.setPayId(id);
        int i1 = addScellServlet.addCk(sGather);
        return 1;
    }

    @GetMapping("/addCk")
    @ResponseBody
    public int addCk(SPayDetails sGatherDetails){
        Date d=new Date();
        String id=d.getDate()+""+d.getHours()+""+d.getMinutes()+""+d.getSeconds();
        sGatherDetails.setParentId(Integer.parseInt(id));
        sGatherDetails.setPayTag("K002-1");
        int i2 = htServlet.addSP(sGatherDetails);
        return 1;
    }

    @GetMapping("/queryCkd")
    @ResponseBody
    public PageVo<SPay> queryCk(String page, String pageNum,SPay sGather){
        PageVo<SPay> dFilePageVo = addScellServlet.queryCk(Integer.parseInt(page), Integer.parseInt(pageNum),sGather);
        return dFilePageVo;
    }

    @GetMapping("/queryCks")
    @ResponseBody
    public PageVo<SPayDetails> queryCks(String page, String pageNum,SPayDetails sGatherDetails){
        PageVo<SPayDetails> dFilePageVo = htServlet.queryCks(Integer.parseInt(page), Integer.parseInt(pageNum),sGatherDetails);

        return dFilePageVo;
    }

    @GetMapping("/cksh")
    @ResponseBody
    public int updateId(SPay sGather){
        return addScellServlet.updateCk(sGather);
    }

    @GetMapping("/updateCks")
    @ResponseBody
    public int updatesCKs(SPayDetails sGatherDetails){
        return htServlet.updateCks(sGatherDetails);
    }

    @GetMapping("/selectCkPdid")
    @ResponseBody
    public int selectCkdid(SPayDetails sGatherDetails){
        Integer parentId = sGatherDetails.getParentId();
        SPay sGather=new SPay();
        sGather.setPayId(parentId.toString());
        sGather.setStoreTag("K002-2");
        int i = htServlet.selectCKPid(sGatherDetails);
        if(i<0){
            return addScellServlet.updateCkPid(sGather);
        }
        return 0;
    }
}
